home *** CD-ROM | disk | FTP | other *** search
/ Macworld Expo - Develope…Central & Net Innovations / Developer Central and Net Innovators (MacWorld Expo) (January 1999).iso / Developer Central / Bowers Development / Demo AppMaker / Examples / C⁄C++ OS8 / Temperature / DDocData.cp < prev    next >
Encoding:
Text File  |  1998-09-06  |  970 b   |  69 lines  |  [TEXT/CWIE]

  1. // DDocData.cp -- data container class for Temperature
  2.  
  3. #include "AMEngine.h"
  4. #include "PString.h"
  5. #include "DDocData.h"
  6.  
  7.  
  8. //----------
  9. DDocData::DDocData ()
  10. {
  11.     mCentigrade = 10;
  12.     mFahrenheit = 50;
  13. }
  14.  
  15. //----------
  16. DDocData::~DDocData ()
  17. {
  18. }
  19.  
  20. //----------
  21. void    DDocData::ReadFromFile (
  22.     AMEngine*        engine)
  23. {
  24. }
  25.  
  26. //----------
  27. void    DDocData::WriteToFile (
  28.     AMEngine*        engine)
  29. {
  30. }
  31.  
  32.  
  33. //----------
  34. SInt32        DDocData::GetCentigrade () const
  35. {
  36.  
  37.     return mCentigrade;
  38. }
  39.  
  40. //----------
  41. void    DDocData::SetCentigrade (
  42.     SInt32        inValue)
  43. {
  44.     mCentigrade = inValue;
  45.         mFahrenheit = ((18 * mCentigrade) + 5) / 10 + 32;
  46.     SignalDataChanged (idFahrenheit);
  47.  
  48.     SignalDataChanged (idCentigrade);
  49. }
  50.  
  51.  
  52. //----------
  53. SInt32        DDocData::GetFahrenheit () const
  54. {
  55.  
  56.     return mFahrenheit;
  57. }
  58.  
  59. //----------
  60. void    DDocData::SetFahrenheit (
  61.     SInt32        inValue)
  62. {
  63.     mFahrenheit = inValue;
  64.         mCentigrade = ((10 * (mFahrenheit - 32)) + 9) / 18;
  65.     SignalDataChanged (idCentigrade);
  66.  
  67.     SignalDataChanged (idFahrenheit);
  68. }
  69.